package com.small.site.service;

import com.small.site.pojo.SysRole;
import com.small.site.util.R;
import com.small.site.vo.PageVo;
import com.small.site.vo.req.RolePageReqVo;
import com.small.site.vo.req.RoleReqVo;

import java.util.Set;

/**
 * @author xiaochi
 * @date 2021/12/16 15:00
 * @desc RoleService
 */
public interface RoleService {
    /**
     * 分页获取角色
     * @param rolePageReqVo
     * @return
     */
    PageVo<SysRole> findPage(RolePageReqVo rolePageReqVo);

    /**
     * 新增角色
     * @param roleReqVo
     * @return
     */
    R<String> createRole(RoleReqVo roleReqVo);

    /**
     * 获取角色详情接口
     * @param roleId
     * @return
     */
    Set<String> getRoleById(String roleId);

    /**
     * 更新角色
     * @param roleReqVo
     * @return
     */
    R<String> updateRole(RoleReqVo roleReqVo);

    /**
     * 更新角色状态
     * @param roleId
     * @param status
     * @return
     */
    R<String> updateRoleStatus(String roleId, Integer status);

    /**
     * 删除角色
     * @param roleId
     * @return
     */
    R<String> deletedRole(String roleId);
}
